<?php
namespace pinduoduo\Request;

use pinduoduo\AbstractInterface\Request;

class PddDdkThemePromUrlGenerateRequest extends Request
{
    /**
     * 已废弃
     * 多多进宝主题推广链接生成
     * @var string
     */
    private $type = 'pdd.ddk.theme.prom.url.generate';

    /**
     * 推广位ID
     * @var
     */
    private $pid;

    /**
     * 主题ID列表,例如[1,235]
     * @var
     */
    private $themeIdList;

    /**
     * 是否生成短链接,true-是,false-否
     * @var
     */
    private $generateShortUrl;

    /**
     * 是否生成手机跳转链接。true-是,false-否,默认false
     * @var
     */
    private $generateMobile;

    /**
     * 自定义参数，为链接打上自定义标签。自定义参数最长限制64个字节。
     * @var
     */
    private $customParameters;

    /**
     * 是否生成唤起微信客户端链接，true-是，false-否，默认false
     * @var
     */
    private $generateWeappWebview;

    /**
     * 唤起微信app推广短链接
     * @var
     */
    private $weAppWebViewShortUrl;

    /**
     * 唤起微信app推广链接
     * @var
     */
    private $weAppWebViewUrl;

    /**
     * 是否生成小程序推广
     * @var
     */
    private $generateWeApp;

    public function setType($type)
    {
        $this->type = $type;
    }

    public function getType()
    {
        return $this->type;
    }

    public function setPid($pid)
    {
        $this->pid = $pid;
    }

    public function getPid()
    {
        return $this->pid;
    }

    public function setThemeIdList($themeIdList)
    {
        $this->themeIdList = $themeIdList;
    }

    public function getThemeIdList()
    {
        return $this->themeIdList;
    }

    public function setGenerateShortUrl($generateShortUrl)
    {
        $this->generateShortUrl = $generateShortUrl;
    }

    public function getGenerateShortUrl()
    {
        return $this->generateShortUrl;
    }

    public function setGenerateMobile($generateMobile)
    {
        $this->generateMobile = $generateMobile;
    }

    public function getGenerateMobile()
    {
        return $this->generateMobile;
    }

    public function setCustomParameters($customParameters)
    {
        $this->customParameters = $customParameters;
    }

    public function getCustomParameters()
    {
        return $this->customParameters;
    }

    public function setGenerateWeappWebview($generateWeappWebview)
    {
        $this->generateWeappWebview = $generateWeappWebview;
    }

    public function getGenerateWeappWebview()
    {
        return $this->generateWeappWebview;
    }

    public function setWeAppWebViewShortUrl($weAppWebViewShortUrl)
    {
        $this->weAppWebViewShortUrl = $weAppWebViewShortUrl;
    }

    public function getWeAppWebViewShortUrl()
    {
        return $this->weAppWebViewShortUrl;
    }

    public function setWeAppWebViewUrl($weAppWebViewUrl)
    {
        $this->weAppWebViewUrl = $weAppWebViewUrl;
    }

    public function getWeAppWebViewUrl()
    {
        return $this->weAppWebViewUrl;
    }

    public function setGenerateWeApp($generateWeApp)
    {
        $this->generateWeApp = $generateWeApp;
    }

    public function getGenerateWeApp()
    {
        return $this->generateWeApp;
    }

    public function getParams()
    {
        $params = [
            'type'                      => $this->type,
            'pid'                       => $this->pid,
            'theme_id_list'             => $this->themeIdList,
            'generate_short_url'        => $this->generateShortUrl,
            'generate_mobile'           => $this->generateMobile,
            'custom_parameters'         => $this->customParameters,
            'generate_weapp_webview'    => $this->generateWeappWebview,
            'we_app_web_view_short_url' => $this->weAppWebViewShortUrl,
            'we_app_web_wiew_url'       => $this->weAppWebViewUrl,
            'generate_we_app'           => $this->generateWeApp,
        ];
        return array_filter($params);
    }
}
